package cn.zyl.common.redis.command;

/**
 * RedisKeyWord枚举说明: redis命令关键字
 *
 * @author wsz
 * @version v1.0
 * @date 2020-08-07
 */
public enum MiniRedisKeyWord implements MiniRedisCommands {
    /** (SORT)关键字：字符排序*/
    ALPHA,
    /** (SORT)关键字：升序，顺序*/
    ASC,
    /** (SORT)关键字：让key按其他键的元素来排序*/
    BY,
    /** (SCAN)关键字：条数*/
    COUNT,
    /** (SORT)关键字：降序，逆序*/
    DESC,
    /** (SCAN)关键字：正则*/
    MATCH,
    /** (SORT)关键字：限制返回数量*/
    LIMIT,
    /** 关键字：跳过的数量*/
    OFFSET,
    /** （OBJECT）关键字：给定 key 引用所储存的值的次数。此命令主要用于除错*/
    REF_COUNT,
    /** （OBJECT）关键字：给定 key 锁储存的值所使用的内部表示(representation)*/
    ENCODING,
    /** （OBJECT）关键字：返回给定 key 自储存以来的空转时间(idle， 没有被读取也没有被写入)，以秒为单位*/
    IDLE_TIME,
    /** (SORT)关键字：指定一个 key 参数，可以将排序结果保存到给定的键上*/
    STORE,
    ;
    MiniRedisKeyWord(){raw = encode(name());}
    private final byte[] raw;
    @Override
    public byte[] getRaw() {
        return raw;
    }
}
